﻿/* ----------------------------------------------------------------------------
 * Copyright (c) Philip Stears 
 *
 * This source code is subject to terms and conditions of the Microsoft Public 
 * License (Ms-PL).
 * 
 * By using this source code in any fashion, you are agreeing to be bound 
 * by the terms of the Microsoft Public License.
 * 
 * To request a copy of the Microsoft Public License, send a request by email
 * to license@connectbasic.net.
 *
 * This notice must not be removed from this software.
 * ---------------------------------------------------------------------------- */

namespace ConnectBasic.Shell.Hosting
{

    /// <summary>
    /// Provides access to the project properties
    /// defined in a project store.
    /// </summary>
    public interface IProjectStoreProperties
    {

        /// <summary>
        /// Gets the textual value of the property
        /// with the given name.
        /// </summary>
        /// <param name="name">The name of the property.</param>
        /// <returns>The textual value of the property with the given name, or a null reference if the property value isn't defined.</returns>
        string GetPropertyText(string name);

        /// <summary>
        /// Sets the textual value of the property 
        /// with the given name.
        /// </summary>
        /// <param name="name">The name of the property.</param>
        /// <returns>The textual value of the property.</returns>
        void SetPropertyText(string name, string text);
    }
}
